home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / konq_xmlguiclient.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-10-10  |  2.1 KB  |  71 lines

  1. /* This file is part of the KDE project
  2.    Copyright (C) 2001 Holger Freyther <freyther@yahoo.com>
  3.  
  4.    This library is free software; you can redistribute it and/or
  5.    modify it under the terms of the GNU Library General Public
  6.    License as published by the Free Software Foundation; either
  7.    version 2 of the License, or (at your option) any later version.
  8.  
  9.    This library is distributed in the hope that it will be useful,
  10.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.    Library General Public License for more details.
  13.  
  14.    You should have received a copy of the GNU Library General Public License
  15.    along with this library; see the file COPYING.LIB.  If not, write to
  16.    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  17.    Boston, MA 02110-1301, USA.
  18. */
  19.  
  20. #ifndef __konqxmlguiclient_h
  21. #define __konqxmlguiclient_h
  22.  
  23. #include <sys/types.h>
  24.  
  25. #include <kaction.h>
  26. #include <kxmlguiclient.h>
  27. #include <qstringlist.h>
  28. #include <libkonq_export.h>
  29.  
  30. /**
  31.  * This class implements common methods to manipulate the DOMDocument of KXMLGUIClient
  32.  *
  33.  */
  34. class LIBKONQ_EXPORT KonqXMLGUIClient : public KXMLGUIClient
  35. {
  36. public:
  37.   KonqXMLGUIClient( );
  38.   KonqXMLGUIClient( KXMLGUIClient *parent );
  39.   virtual ~KonqXMLGUIClient( );
  40.   /**
  41.    * Reimplemented for internal purpose
  42.    */
  43.   QDomDocument domDocument( ) const;
  44.  
  45.   QDomElement DomElement( ) const; // KDE4: s/D/d/
  46.  
  47. protected:
  48.   void addAction( KAction *action, const QDomElement &menu = QDomElement() );
  49.   void addAction( const char *name, const QDomElement &menu = QDomElement() );
  50.   void addSeparator( const QDomElement &menu = QDomElement() );
  51.   /// only add a separator if an action is added afterwards
  52.   void addPendingSeparator();
  53.   void addGroup( const QString &grp );
  54.   void addMerge( const QString &name );
  55.  
  56.   // @return true if addAction was called at least once
  57.   bool hasAction() const;
  58.   void prepareXMLGUIStuff();
  59.  
  60. // KDE4: make private
  61.   QDomElement m_menuElement;
  62.   QDomDocument m_doc;
  63.  
  64. private:
  65.   void handlePendingSeparator();
  66.   class Private;
  67.   Private *d;
  68. };
  69. #endif
  70.  
  71.